using System;
using System.Collections.Generic;
using System.Text;
using EntidadesTO;
using LogicaNegocio;

namespace Controladoras
{
    public class MotivoDeclaracionMantenedor
    {
        private static MotivoDeclaracionMantenedor instancia;
        private List<MotivoDeclaracionTO> listaMotivoDeclaracion;
        private MotivoDeclaracionBL motivoDeclaracionBL;

        public static MotivoDeclaracionMantenedor ObtenerInstancia()
        {
            if (instancia == null)
            {
                instancia = new MotivoDeclaracionMantenedor(); 
            }
            return instancia;
        }

        //Constructor de la clase
        private MotivoDeclaracionMantenedor()
        {
            listaMotivoDeclaracion = new List<MotivoDeclaracionTO>();
            motivoDeclaracionBL = new MotivoDeclaracionBL();
        }
        
        public void CargarLista(int pCodTipoMotivo)
        {
            listaMotivoDeclaracion = motivoDeclaracionBL.Listar(pCodTipoMotivo);
        }

        public MotivoDeclaracionTO BuscarMotivoCompleto(int pCodMotivoDeclaracion)
        {
            return motivoDeclaracionBL.ObtenerMotivoCompleto(pCodMotivoDeclaracion);
        }

        //Devolver la lista de documentos legales
        public List<MotivoDeclaracionTO> ListaMotivoDeclaracion
        {
            get
            {
                return this.listaMotivoDeclaracion;
            }
        }
    }
}
